home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er 1985 February
/
64er_Magazin_85-02_1985_Markt__Technik_de.d64
/
super memory
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-10-26
|
7KB
|
184 lines
0 goto 9
1 ***********************
2 * super memory *
3 * von bernd arnold *
4 * schulenburg str.6 *
5 * 8500 nuernberg 50 *
6 * tel 804567 *
7 ***********************
9 clr:rem alle variablen loeschen
10 poke53281,8:poke53280,7
11 print"[147][149]"
12 gosub 4500:rem springt zur einleitung
13 print"[147][149]":clr
14 input"bitte die endzahl eingeben ";a:aa=a:a=a+48
15 if a<58 then goto 17:rem zahl auf korrektheit ueberpruefen
16 print"die zahl darf nicht groesser als 9 sein":goto 10
17 print"bitte die anzahl der schritte eingeben ":inputb
20 a(1)=a:a(2)=a:a(3)=a:a(4)=a:a(5)=a:a(6)=a:a(7)=a:a(8)=a:a(9)=a:s=-1:b=b+1
40 goto 2000:rem zufallszahlen erzeugen
90 rem bildschirmgrafik aufbauen
100 print"[147]";
110 printchr$(176)+chr$(99)+chr$(178)+chr$(99)+chr$(178)+chr$(99)+chr$(174);
120 print"[157][157][157][157][157][157][157]";:printchr$(98)+chr$(a(1))+chr$(98)+chr$(a(2))+chr$(98);
130 printchr$(a(3))+chr$(125);:print"[157][157][157][157][157][157][157]";:printchr$(171)+chr$(99);
140 printchr$(123)+chr$(99)+chr$(123)+chr$(99)+chr$(179);:print"[157][157][157][157][157][157][157]";
150 printchr$(98)+chr$(a(4))+chr$(98)+chr$(a(5))+chr$(98)+chr$(a(6))+chr$(98);
160 print"[157][157][157][157][157][157][157]";:printchr$(171)+chr$(99)+chr$(123)+chr$(99)+chr$(123);
170 printchr$(99)+chr$(179);:print"[157][157][157][157][157][157][157]";:printchr$(98)+chr$(a(7));
180 printchr$(98)+chr$(a(8))+chr$(98)+chr$(a(9))+chr$(98);:print"[157][157][157][157][157][157][157]";
190 printchr$(173)+chr$(99)+chr$(177)+chr$(99)+chr$(177)+chr$(99)+chr$(189)
200 print"f=[145] [157] [157] [145] [146]h= [145] [157] [157] [146][145]g= [145][157][157] [157] [146][145]";
205 print"t=[145] [157][157] [157] [146][145]";
210 print"v= [145][157][157] [145][157] ":print"[145][145][145][145][145][145][145][145][145][145]r=[145] [157][157][157] [157] [146]"
220 print"c= [157][157][157][145] [145][157] [146][145][145][145]y=[145] [157] [157] [146][157][157]";
230 print"[157][157][157]b=[145] [157] [157][157][157] "
240 return
250 rem *******************************
1000 print"":s=s+1:rem s=schritte
1010 print"[149] bitte das feld eingeben, das sie ver- aendern wollen"
1015 print"schritte:"s
1016 printtab(18)"[145]endzahl lautet "aa
1017 print"f1=neues spiel":print" f7=alle schritte zurueck"
1020 geta$:rem tastaturabfrage
1025 ifa$="[136]"then4100:rem "[136]" = f7
1030 ifa$="r"then1140
1050 ifa$="t"then1150
1060 ifa$="y"then1160
1070 ifa$="f"then1170
1080 ifa$="g"then1180
1090 ifa$="h"then1190
1100 ifa$="c"then1200
1110 ifa$="v"then1210
1120 ifa$="b"then1220
1121 ifa$="[133]"then13:rem "[133]" = f1
1122 fort=1to9:ifa(t)=a then x=x+1:rem ueberpruefen ob alle zahlen gleich sind
1123 nextt
1124 if x=9 then 3000:rem wenn ja dann gradulation
1125 x=0
1130 goto 1020
1135 rem r-zahlen um 1 erhoehen
1140 a(1)=a(1)+1:a(2)=a(2)+1:a(3)=a(3)+1:a(4)=a(4)+1:a(7)=a(7)+1
1141 fort=1to9:ifa(t)=58thena(t)=48:rem wenn zahl groesser als 9 dann auf 0
1142 nextt:gosub 100:goto 1000
1143 rem t-zahlen um 1 erhoehen
1150 a(1)=a(1)+1:a(2)=a(2)+1:a(3)=a(3)+1:a(5)=a(5)+1:a(8)=a(8)+1
1151 fort=1to9:ifa(t)=58thena(t)=48
1152 nextt:gosub 100:goto 1000
1153 rem y-zahlen um 1 erhoehen
1160 a(1)=a(1)+1:a(2)=a(2)+1:a(3)=a(3)+1:a(6)=a(6)+1:a(9)=a(9)+1
1161 fort=1to9:ifa(t)=58thena(t)=48
1162 nextt:gosub 100:goto 1000
1163 rem f-zahlen um 1 erhoehen
1170 a(1)=a(1)+1:a(4)=a(4)+1:a(5)=a(5)+1:a(6)=a(6)+1:a(7)=a(7)+1
1171 fort=1to9:ifa(t)=58thena(t)=48
1172 nextt:gosub 100:goto 1000
1173 rem g-zahlen um 1 erhoehen
1180 a(2)=a(2)+1:a(4)=a(4)+1:a(5)=a(5)+1:a(6)=a(6)+1:a(8)=a(8)+1
1181 fort=1to9:ifa(t)=58thena(t)=48
1182 nextt:gosub 100:goto 1000
1183 rem h-zahlen um 1 erhoehen
1190 a(3)=a(3)+1:a(4)=a(4)+1:a(5)=a(5)+1:a(6)=a(6)+1:a(9)=a(9)+1
1191 fort=1to9:ifa(t)=58thena(t)=48
1192 nextt:gosub 100:goto 1000
1193 rem c-zahlen um 1 erhoehen
1200 a(1)=a(1)+1:a(4)=a(4)+1:a(7)=a(7)+1:a(8)=a(8)+1:a(9)=a(9)+1
1201 fort=1to9:ifa(t)=58thena(t)=48
1202 nextt:gosub 100:goto 1000
1203 rem v-zahlen um 1 erhoehen
1210 a(2)=a(2)+1:a(5)=a(5)+1:a(7)=a(7)+1:a(8)=a(8)+1:a(9)=a(9)+1
1211 fort=1to9:ifa(t)=58thena(t)=48
1212 nextt:gosub 100:goto 1000
1213 rem b-zahlen um 1 erhoehen
1220 a(3)=a(3)+1:a(6)=a(6)+1:a(7)=a(7)+1:a(8)=a(8)+1:a(9)=a(9)+1
1221 fort=1to9:ifa(t)=58thena(t)=48
1222 nextt:gosub 100:goto 1000:rem zahlen in grafik erneuern
1223 rem ******************************
1224 rem zufallszahlen erzeugen
2000 print"[147]einen moment bitte!"
2001 z=int(9*rnd(1))+1:bb=bb+1
2002 if bb=b then 4000:rem kontrolle ob genug zufallszahlen erzeugt sind
2003 goto 2010
2010 on z goto 2020,2030,2040,2050,2060,2070,2080,2090,2100
2020 a(1)=a(1)-1:a(2)=a(2)-1:a(3)=a(3)-1:a(4)=a(4)-1:a(7)=a(7)-1
2021 fort=1to9:ifa(t)=47thena(t)=57
2022 nextt:goto 2001
2023 rem ******************************
2030 a(1)=a(1)-1:a(2)=a(2)-1:a(3)=a(3)-1:a(5)=a(5)-1:a(8)=a(8)-1
2031 fort=1to9:ifa(t)=47thena(t)=57
2032 nextt:goto 2001
2033 rem ******************************
2040 a(1)=a(1)-1:a(2)=a(2)-1:a(3)=a(3)-1:a(6)=a(6)-1:a(9)=a(9)-1
2041 fort=1to9:ifa(t)=47thena(t)=57
2042 nextt:goto 2001
2043 rem ******************************
2050 a(1)=a(1)-1:a(4)=a(4)-1:a(5)=a(5)-1:a(6)=a(6)-1:a(7)=a(7)-1
2051 fort=1to9:ifa(t)=47thena(t)=57
2052 nextt:goto 2001
2053 rem ******************************
2060 a(2)=a(2)-1:a(4)=a(4)-1:a(5)=a(5)-1:a(6)=a(6)-1:a(8)=a(8)-1
2061 fort=1to9:ifa(t)=47thena(t)=57
2062 nextt:goto 2001
2063 rem ******************************
2070 a(3)=a(3)-1:a(4)=a(4)-1:a(5)=a(5)-1:a(6)=a(6)-1:a(9)=a(9)-1
2071 fort=1to9:ifa(t)=47thena(t)=57
2072 nextt:goto 2001
2073 rem ******************************
2080 a(1)=a(1)-1:a(4)=a(4)-1:a(7)=a(7)-1:a(8)=a(8)-1:a(9)=a(9)-1
2081 fort=1to9:ifa(t)=47thena(t)=57
2082 nextt:goto 2001
2083 rem ******************************
2090 a(2)=a(2)-1:a(5)=a(5)-1:a(7)=a(7)-1:a(8)=a(8)-1:a(9)=a(9)-1
2091 fort=1to9:ifa(t)=47thena(t)=57
2092 nextt:goto 2001
2093 rem ******************************
2100 a(3)=a(3)-1:a(6)=a(6)-1:a(7)=a(7)-1:a(8)=a(8)-1:a(9)=a(9)-1
2101 fort=1to9:ifa(t)=47thena(t)=57
2102 nextt:goto 2001
2103 rem spiel gewonnen : schlussgrafik
3000 print"[147]"
3010 print" graduliere sie haben das problem in"s:print" schritten geloest"
3020 if s<=bb-1 then 3040
3030 goto 3060
3040 print" das ist die geringste anzahl von"
3050 print" schritten die moeglich war!"
3060 print" wollen sie noch ein spiel";
3070 inputa$:ifa$="j"then goto13
3080 print"[147]schade":end
4000 fort=1to9:b(t)=a(t):nextt
4010 gosub 100:goto 1000
4100 fort=1to9:a(t)=b(t):nextt
4110 s=-1:gosub 100:goto 1000
4500 rem titelbild erzeugen
4510 print"[147]";
4520 print"bernd arnold[157][157][157][157][157][157][157][157][157][157][157][157]presentiert"
4530 fort=0to2400:nextt
4540 print"[147]";
4550 print"super memory"
4560 fort=0to2400:nextt
4570 print"[147]64'er 64'er"
4580 print"";
4590 print"produziert[157][157][157][157][157][157][157][157][157][157]20.10.1984"
4600 print"64'er 64'er"
4610 fort=0to2400:nextt
4620 print"[147]"
4630 print"dies ist ein denkspiel fuer jedes alter."
4640 print" sinn des spieles ist es, zahlen in einem 3*3 kaestchen ";
4650 print"grossen feld so zu manipulieren dass zum schluss alle";
4660 print" den gleichen wert haben."
4670 print" durch druecken spezieller tasten die spaeter angezeigt werden,";
4680 print" koennen be- stimmte zahlen um eins erhoeht werden."
4690 print" welche zahlen das sind koennen sie an den mustern erkennen."
4700 print"weiter mit return"
4710 geta$:ifa$<>chr$(13)then4710
4720 print"[147]"
4730 print" sie koennen waehlen welche zahl zum schluss einmal im ";
4740 print"kaestchen stehen soll."
4750 print" auserdem koennen sie waehlen wieviele schritte sie mindestens ";
4760 print"dazu benoeti- gen."
4770 print" ps: wenn ihnen das spiel schwer er- scheinen sollte, ";
4780 print"macht nichts es ist noch kein meister vom himmel gefallen!"
4790 print" zum spielen bitte taste druecken"
4800 geta$:ifa$=""then4800
4810 return